package com.itheima.dao;

import com.github.pagehelper.Page;
import com.itheima.pojo.Permission;
import com.itheima.pojo.Role;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Set;

/**
 * @author 黑马程序员
 * @Company http://www.ithiema.com
 * @Version 1.0
 */
public interface RoleDao {

    Set<Role> findRolesByUserId(Integer userId);

    Page<Role> findByCondition(String queryString);

    void add(Role role);

    void setRelation(@Param("role_id")Integer roleId, @Param("permission_id")Integer permissionId);

    long findCountById(Integer id);

    void delRelation(Integer id);

    void delById(Integer id);

    Role findById(Integer id);

    List<Integer> findpermissionIdsByroleId(Integer roleId);

    void edit(Role role);

    Role findByname(String name);

    long findCountById2(Integer id);

    void setRelation2(@Param("role_id")Integer roleId, @Param("menu_id")Integer menuId);

    void delRelation2(Integer id);

    List<Integer> findmenuIdsByroleId(Integer roleId);
}
